//
//  LSIMPlatform.h
//  LiveStar
//
//  Created by 漪珊 on 2016/12/26.
//  Copyright © 2016年 apple. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "LSUserModel.h"

typedef void(^Success)(id objc);
typedef void(^Failed)(NSError *error);

/**
 *  操作失败回调
 *
 *  @param code 错误码
 *  @param msg  错误描述，配合错误码使用，如果问题建议打印信息定位
 */
typedef void (^LSLogIMFail)(int code, NSString * msg);

/**
 *  登陆成功回调
 */
typedef void (^LSLogIMLoginSucc)();
/**
 *  ImSDK登录相关接口封装
 */

@interface LSIMPlatform : NSObject<TIMUserStatusListener,TIMGroupAssistantListener>

// 初始化IMSDK，传入appid等信息
- (void)initIMSDK;

// 向app端发送请求 获取签名的usersig
- (void)prepareIMLogSuccess:(Success)success Failed:(Failed)failed;

// 登录IMSDK (调用该接口之前先向服务器发送请求 获取签名usersig 和 identifier)
- (void)loginIMSDKWithIMUserModelWithSucc:(TIMLoginSucc)succ Fail:(TIMFail)fail;

// 退出IMSDK 在需要切换帐号时，需要logout回调成功或者失败后才能再次login，否则login可能会失败。
- (void)logout;


@end
